package com.why.blog.service.token;

import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;
import com.why.blog.entity.HaloUser;
import org.springframework.stereotype.Service;

@Service
public class TokenService {

    /**
     * Algorithm.HMAC256():使用HS256生成token,
     * 密钥则是用户的密码，唯一密钥的话可以保存在服务端。
     * withAudience()存入需要保存在token的信息，这里我把用户ID存入token中
     * @param user
     * @return
     */
    public String getToken(HaloUser user){
        String token = "";
        token = JWT.create().withAudience(user.getUserId())
                .sign(Algorithm.HMAC256(user.getUserPass()));
        return  token;
    }
}
